obj変数 - 角度
拡張編集の回転はz-y-x系オイラー角で,
z軸回転角をobj.rz
y軸回転角をobj.ry
x軸回転角をobj.rx
に,それぞれ度数法のnumberで格納する.
初期値は標準描画/拡張描画の回転/X軸回転,Y軸回転,Z軸回転の値で,絶対値が360以上の値は範囲に収まるように剰余を取ってから格納される.
(例: 400 → 40 -950 → -230)
フィルタ効果「回転」は,これら変数への加算を行う.このとき,トラックバーの値は絶対値を360未満に調整してから加算する.
例
1.
code:lua
print(obj.getvalue("rz"),obj.rz)
標準描画の回転の値が-360以下か360以上なら、値に相違がある.(実際は計算方法の関係でobj.rzには余計な小数部分が付くことになる)
2.
code:lua
local rad=math.rad(obj.rz)
local sin,cos=math.sin(rad),math.cos(rad)
obj.ox,obj.oy=obj.ox*cos-obj.oy*sin,obj.ox*sin+obj.oy*cos
個別オブジェクトに対して標準描画の回転を実行したとき,オブジェクトを一緒に動かす.
3.
code:Object
円 標準描画 回転=300.00
回転 Z=300.00
スクリプト制御 _text=print(obj.rz)
code:Object
円 標準描画 回転=600.00
回転 Z=300.00
スクリプト制御 _text=print(obj.rz)
code:Object
円 標準描画 回転=500.00
回転 Z=-600.00
スクリプト制御 _text=print(obj.rz)
code:出力例
599.99633789063
539.99450683594
-99.99755859375
剰余処理はトラックバーごとに行われるため,2つ目のオブジェクトでは240+300,3つ目のオブジェクトでは140-240の計算が行われる.